This invention relates to a system for directing e-mail to selected sets of recipients.
Electronic mail provides a quick and convenient way for computer users to communicate. This communication is initiated by a message sender who composes the message using a text editing program, provides the e-mail address of the intended recipient, and often provides an indication of the content (subject matter) of the message by providing text in a xe2x80x9csubjectxe2x80x9d field. Using well-understood technology this composed message is then sent to the recipient""s computer address. The recipient""s computer receives the message and stores it in the recipient""s inbox. The recipient eventually reads, deletes, responds to, or otherwise processes the message stored within the inbox by using any of a number of email programs well known in the art.
The header portion of an email message contains fields composed of character strings comprising a field-name followed by a colon, followed by a field-body terminated by a carriage return/line feed. An example header field is:
xe2x80x9cTo: John Doc less than CR greater than  less than LF greater than xe2x80x9d.
In this example, the  less than CR greater than  represents the ASCII carriage return character and the  less than LF greater than  represents the ASCII line feed character. The header filed-names are not case sensitive, thus, xe2x80x9cto:xe2x80x9d is equivalent to xe2x80x9cTO:xe2x80x9d or xe2x80x9ctO:xe2x80x9d.
The contents of these headers are specified by the entity that composes the message.
The xe2x80x9cTo:xe2x80x9d field-body contains the addresses of the primary recipients of the message where the address of each recipient is separated by a comma. Recipients include both humans and programs. The xe2x80x9cSubject:xe2x80x9d field-body often provides a summary, or indicates the nature, of the message and sometimes contains a specialized command string that is to be recognized by the recipient. Although, these fields are all initialized by the sender, the recipient fields are generally limited to actual Internet addresses. On the other hand, the subject field has no specific meaning and may, in fact, be blank, contain a specialized command string or contain a random arrangement of characters. Additional xe2x80x9ccc:xe2x80x9d and xe2x80x9cbcc:xe2x80x9d field bodies are optional means for sending declared and undeclared (xe2x80x98blindxe2x80x99) copies of the message to one recipient or groups of recipients.
A sender can address a single message to many recipients by separating the addresses of the recipients with a comma. Each of these recipients may respond to the original message by sending a reply message to the same list of recipients (plus the original sender). Some of these recipients may then respond to the first reply message. These reply messages are termed follow-up messages to the original message. This process facilitates a vigorous discussion between the original sender and the recipients, as well as between the recipients.
Very often, a recipient or group of recipients who are frequently contacted, are identified by an alias (a name string) in order to facilitate identification and/or reduce the burden of repeatedly entering the individual email addresses. An alias may correspond to a group of email addresses and may further make reference to other aliases. In this manner a complex hierarchy of aliases can be established.
With e-biz coming of age and the internet usage increasing in exponential proportion there is a severe need to supplement e-mail tools with powerful facilities so as to enable optimal utilization of internet bandwidth with ease of use. E-mail usage is also likely to increase exponentially. While all efforts are being made to develop and provide appropriate internet infrastructure, concerted efforts are needed to optimize e-mail usage and there is a dire need to improve the current facilities. For example, existing email systems do not provide any means to selectively alter lists of recipients as needed. This results in the user having to either manually enter a large number of recipient aliases and/or email addresses or alternatively the email is transmitted to everyone in the list resulting in wasted bandwidth and confusion.
The existing email systems have following limitations:
Absence of Ability to Deny Mail to One or More Sub-aliases or E-mail Addresses which are Already Listed in One or More Identified Mailing Lists
Consider a situation for example:
To: Alias1
Cc: Alias2
Bcc: Alias3
Group: Alias4
Where xe2x80x9cGroupxe2x80x9d refers to groups of recipients, such as newsgroups.
Let Alias1 consist of Alias11, Alias12, . . . Alias1n
Let Alias2 consist of Alias21, Alias22, . . . Alias2n
Let Alias3 consist of Alias31, Alias32, . . . Alias3n
Let Alias4 consist of Alias41, Alias42, . . . Alias4n
If one were to send a mail that were to be denied to say: Alias12, Alias22, Alias31 and Alias42 and u1@d1.com which is listed under Alias11 and u2@d2.com which is listed under Alias12 there is no way one can do that with the existing e-mail features without expanding all the aliases and removing the e-mail addresses that need to be denied.
Absence of Nested Inclusion and Exclusion of Aliases
Consider the a situation where an alias is structured as follows:
Alias1-Alias11, Alias 12, . . . Alias1n
Alias11-Alias111, Alias112, . . . Alias11n
Alias(1 . . . 1ntimes)-Alias(1 . . . 1ntimes)1, Alias(1 . . . 1ntimes)2 . . . Alias(1 . . . 1ntimes)n
:
:
If one were to send mail such that it includes Alias1 but excludes Alias11 and includes Alias111 but excludes Aliass1111 but includes Alias11111 and excludes Alias111111 then it is not possible to ensure this in a simple fashion using existing mail features.
U.S. Pat. No. 5,864,684 describes an invention for enabling a user to exclude himself from subscription to a mailing list either temporarily or permanently. In other words, this patent implements subscription and unsubscription to automatic mailing lists. This patent does not address the problem of selective transmission of an email message to a number of recipients.
The object of this invention is therefore to introduce a feature in email software to provide the ability to deny mail to one or more sub-aliases or e-mail addresses already listed in one or more identified mailing lists.
The second object of the invention is to provide a facility for nested inclusion and exclusion of aliases.
To achieve said objectives, this invention provides in a computing system, a method for transmitting e-mail (electronic mail) to a plurality of recipients identified by one or more aliases in identified list or lists of recipients, characterized in that said method includes selectively enabling or denying the transmission of email to identified recipients or groups of recipients in any of said aliases, comprising the steps of:
providing transmission control directives by the user,
parsing said transmission control directives to identify transmission requirements,
expanding aliases mentioned in any of said transmission control directives wherever necessary using stored lists of alias definition,
applying each said parsed transmission control directive on said aliases in said identified list or lists of recipients so as to exclude or include a recipient or a group of recipients in said identified list or lists.
One or more of said aliases are nested aliases that contain one or more aliases within them.
The recipients are included or excluded from said identified list or lists based on the order in which the inclusion or exclusion is defined.
The said identified list or lists include lists for sending copies and/or sending blind copies and lists for groups.
The said transmission control directives are by means of exclusion strings, xe2x80x9cDeny-Toxe2x80x9d, xe2x80x9cDeny-Ccxe2x80x9d, xe2x80x9cDeny-Bccxe2x80x9d, xe2x80x9cDeny-Groupxe2x80x9d and xe2x80x9cDeny-Attachmentxe2x80x9d, wherein define recipients that are to be excluded from the identified, xe2x80x9cTo:xe2x80x9d, xe2x80x9cCc:xe2x80x9d, xe2x80x9cBcc:xe2x80x9d and xe2x80x9cGroup:xe2x80x9d lists respectively while xe2x80x9cDeny attachmentxe2x80x9d identifies recipients that are excluded from receiving attachments.
The said transmission control directives are by means of exclusion string xe2x80x98-Exe2x80x99 and inclusion string xe2x80x98-Ixe2x80x99 definitions in the xe2x80x98To:xe2x80x99, xe2x80x98Cc:xe2x80x99, xe2x80x98Bcc:xe2x80x99 and xe2x80x98Group:xe2x80x99 identified lists of recipients, where xe2x80x9cGroup:xe2x80x9d recipients include newsgroups.
The exclusion string xe2x80x98-Exe2x80x99 and inclusion string xe2x80x98-Ixe2x80x99 is applied to exclusion string xe2x80x98Deny-To:xe2x80x99, xe2x80x98Deny-Cc:xe2x80x99, xe2x80x98Deny-Bcc:xe2x80x99, xe2x80x98Deny-Group:xe2x80x99 and xe2x80x98Deny-Attachment:xe2x80x99 to identify recipient for exclusion or inclusion.
The said transmission control directives are implemented in accordance with rules based on requirements of implementation.
The said exclusion directive defined twice for the same recipient or group of recipients effectively includes said recipient or group of recipient.
This invention further provides an email transmission apparatus configured to transmit email messages to selected recipients and groups of recipients from identified list or lists of recipients; said apparatus having a central processing unit (CPU), associated memory and storage devices and input output devices, comprising:
an inputting mechanism for obtaining aliases and transmission control directives from the user,
a parsing mechanism for identifying transmission control directives provided by the user,
an expansion mechanism for expanding aliases mentioned in any of said transmission control directives where necessary using stored alias definition lists,
an exclusion mechanism for removing specific aliases or email addresses from said defined list or lists of recipients, based on the transmission control directives,
an inclusion mechanism for adding specific aliases or email addresses to the aliases in said defined list or lists of recipients.
The said inputting mechanism comprises:
an exclusion definition string,
one or more aliases or email address strings to be excluded, and optionally,
an inclusion definition string,
one or more aliases or email address strings to be included.
The said parsing mechanism is any standard parsing means.
The said expansion mechanism comprises:
a database or file storage mechanism for storing the email addresses for each alias,
an accessing mechanism for retrieving the email addresses from said storage mechanism.
The said exclusion mechanism includes a means for removing one or more aliases or email addresses from one or more said defined aliases in the list or lists of recipients, in accordance with rules based on requirements of implementation.
The said inclusion mechanism includes a means for adding one or more aliases or email addresses to one or more said defined aliases in the list or lists of recipients, in accordance with rules based on requirements of implementation.
Furthermore, the present invention provides a computer program product comprising a computer usable storage medium having computer readable code embodied therein for causing a computer to transmit email to a plurality of recipients, characterized in that it includes:
computer readable code devices configured to enable provision of aliases and transmission control directives by the user,
computer readable code devices for parsing said transmission control directives to identify transmission requirements,
computer readable code devices for expanding one or more aliases mentioned in any of said transmission control directives, where necessary using stored alias definition lists,
computer readable code devices for application of each said parsed transmission control directive on said identified list or lists of recipients so as to exclude or include a recipient or a group of recipients in said identified list or lists, in accordance with rules based on requirements of implementation.
The said computer readable code devices for provision of transmission control directives by the user comprising:
computer readable exclusion definition string,
one or more alias or email address strings to be excluded, and optionally,
computer readable inclusion definition string,
one or more alias or email address strings to be included.
The said computer readable code device for expansion of one or more aliases comprising:
a first computer readable code device for storing the email addresses for each alias,
a second computer readable coded device for retrieving the email addresses from said storage.